/*
 * Copyright (C) 2010 TopCoder Inc., All Rights Reserved.
 */
package com.hercules.xre.protocol.testing.netty;

import com.topcoder.util.errorhandling.ExceptionData;


/**
 * <p>
 * Exception thrown when dispose() or sendCommad() methods are called but connection manager hasn't been started yet.
 * </p>
 *
 * <p>
 * <strong>Thread-safety:</strong> This class is not thread safe as its base class is not.
 * </p>
 *
 * @author TCSDESIGNER, TCSDEVELOPER
 * @version 1.0
 */
public class ProtocolTestingConnectionManagerNotRunningException
    extends NettyProtocolTestingConnectionManagerException {
    /**
     * <p>
     * The generated serialVersionUID.
     * </p>
     */
    private static final long serialVersionUID = 8724093226798135425L;

    /**
     * <p>
     * Message-only constructor, initializes a new exception with the given message.
     * </p>
     *
     * @param message Useful message containing a description of why the exception was thrown - may be null.
     */
    public ProtocolTestingConnectionManagerNotRunningException(String message) {
        super(message);
    }

    /**
     * <p>
     * Constructor which takes a message and a cause detailing why the exception occurs.
     * </p>
     *
     * @param message Useful message containing a description of why the exception was thrown - may be null.
     * @param cause The initial throwable reason which triggered this exception to be thrown - may be null.
     */
    public ProtocolTestingConnectionManagerNotRunningException(String message, Throwable cause) {
        super(message, cause);
    }

    /**
     * <p>
     * Constructs the exception taking both a message and the additional data to attach to the exception.
     * </p>
     *
     * @param message Useful message containing a description of why the exception was thrown - may be null.
     * @param data The additional data to attach to the exception - if this is null, a new ExceptionData() is used
     *        instead.
     */
    public ProtocolTestingConnectionManagerNotRunningException(String message, ExceptionData data) {
        super(message, data);
    }

    /**
     * <p>
     * Constructor which takes a message and a cause detailing why the exception occurs.
     * </p>
     *
     * @param message Useful message containing a description of why the exception was thrown - may be null.
     * @param cause The initial throwable reason which triggered this exception to be thrown - may be null.
     * @param data The additional data to attach to the exception - if this is null, a new ExceptionData() is used
     *        instead.
     */
    public ProtocolTestingConnectionManagerNotRunningException(String message, Throwable cause, ExceptionData data) {
        super(message, cause, data);
    }
}
